خانه
گاما

درسنامه آموزشی دانش فنی پایه کلاس دهم شبکه و نرم افزار رایانه (صنعت)

پودمان 3: حل مسئله (تبدیل مبناها)

بازدید24/8 K
تاریخ بروزرسانی1400/05/20

اساس کار رایانه

آیا تاکنون درباره اصطلاح دیجیتال و آنالوگ شنیده‌اید؟

برای اینکه بتوانیم عملکرد رایانه‌ها را مورد بررسی قرار دهیم باید تعریفی از یک سیستم دیجیتال داشته باشیم. واحد پردازش مرکزی و حافظه‌ها در رایانه ساختاری دیجیتالی دارند و بعضی از سخت‌افزارهای رایانه وظیفه تبدیل آنالوگ به دیجیتال و بالعکس را دارند. برای مثال وقتی شما بخواهید به کمک میکروفون صدای خود را ضبط کنید، صدای شما به صورت سیگنال‌های آنالوگ از میکروفون به رایانه منتقل می‌شود. برای ذخیره روی حافظه رایانه که ساختار دیجیتالی دارد از یک تبدیل کننده آنالوگ به دیجیتال استفاده شده است. به همین ترتیب برای گوش دادن به این پرونده صوتی از طریق بلندگو، به تبدیل کننده دیجیتال به آنالوگ نیاز است. سیستم‌های دیجیتال اطلاعات را بر مبنای 0 و 1 ارائه و پردازش می‌کنند.

در یک لامپ معمولی با تغییر وضعیت کلید، لامپ روشن یا خاموش می‌شود. در رایانه قطع و وصل بودن با تعیین سطح ولتاژ مشخص می‌شود. در وسایل الکترونیکی، ترانزیستور کار کلید را با سرعت خیلی بالا انجام می‌دهد. مدارهای مجتمع و تراشه‌ها از تعداد زیادی ترانزیستور استفاده می‌کنند. برای نمونه CPU مدل Core i7 حدود دو میلیارد ترانزیستور دارد.

صفر و یک، نمادهای سیستم شمارش دودویی هستند. در سیستم دودویی همه اعداد و حروف را می‌توان به صورت تعدادی از صفر و یک‌های پشت سر هم نمایش داد. اساس محاسبات و پردازش‌ها، در سیستم‌های رایانه‌ای نیز بر مبنای سیستم دودویی است. زیرا پیاده‌سازی این سیستم به وسیله تجهیزات الکترونیکی بسیار ساده‌تر از دیگر سیستم‌های عددی است.

سیستم اعداد

در طول روز ما بارها از اعداد برای شمارش استفاده می‌کنیم؛ برای مثال عدد 235 را می‌خوانیم دویست و سی وپنج. این شیوه خواندن عدد که ما بدون فکر کردن و برحسب عادت انجام می‌دهیم، به دلیل وجود دسته‌های ده‌تایی از اعداد است.

سیستم شمارش بالا را سیستم ده‌دهی (Decimal) می‌نامند. ما برای شمارش‌های متداول در زندگی روزمره، از سیستم ده‌دهی استفاده می‌کنیم که شامل ده رقم 0 تا 9 است.

سیستم‌‌‌‌‌‌‌‌‌‌‌‌‌های عددنویسی براساس شمارش مبناهای متفاوت دسته‌بندی می‌شوند. در سیستم دودویی مبنای 2 و در سیستم ده‌دهی مبنای 10 و در سیستم شانزده‌تایی مبنای 16 اساس شمارش است. هر سیستم عددنویسی، شامل یک عدد پایه یا مبنا و مجموعه‌ای از ارقام است که به تعداد عدد مبنا عضو دارد. در سیستم عددنویسی ده‌دهی مبنا عدد 10 است و ارقام آن مجموعه $\left\{ 0,1,2,3,4,5,6,7,8,9 \right\}$ است؛ یعنی در سیستم عددنویسی ده‌دهی ارقام اعداد نمی‌توانند خارج از مجموعه یادشده باشند و هر عددی در این سیستم از کنار هم قرار گرفتن این ارقام ایجاد می‌شود. برای نمونه 2578 شامل ارقام 2، 5، 7 و 8 است.

فعالیت کلاسی (صفحهٔ 63 کتاب درسی)

 

یک مجموعه پنج‌تایی کارت مانند شکل زیر داریم که یک طرف آن‌ها نقطه‌دار و طرف دیگر خالی است. از پنج هنرجو می‌خواهیم کارت‌ها را به‌ترتیب زیر از راست به چپ برای بقیه هم‌کلاسی‌هایشان مقابل کلاس نگه دارند.

1- تعداد نقطه‌های کارت بعدی را حدس بزنید. آیا الگویی برای نشان دادن کارت بعدی وجود دارد؟

2- با جمع کردن تعداد نقطه‌های برخی از کارت‌ها می‌توانیم برای ساختن سایر اعداد از آن‌ها استفاده کنیم. با هم‌کلاسی خود اعداد 6، 15 و 21 را نشان دهید.

اگر کارتی که به پشت است را با صفر، و زمانی که نقطه‌های روی کارت دیده می‌شوند با یک نشان دهیم، سیستم عددی دودویی ایجاد می‌شود. برای نمونه ترتیب قرار گرفتن کارت به شکل زیر برای نمایش عدد 9 استفاده می‌شود.

3- کارت‌ها را روی میز بچینید و اعداد مبنای دو 01001، 10101 و 11111 را بسازید. هر کدام از این اعداد در سیستم نمایش دودویی معادل چه عددی در سیستم نمایش ده‌دهی است؟

4- عددهای 3، 12 و 19 را با استفاده از کارت‌ها نمایش دهید.

کنجکاوی (صفحهٔ 64 کتاب درسی)

 

1- بزرگ‌ترین و کوچک‌ترین عددی که با این کارت‌ها می‌توان ساخت چه اعدادی است؟

2- عددهای 1، 2، 3 و 4 را به ترتیب بسازید. آیا می‌توان روش منطقی و قابل اطمینانی برای برگرداندن کارت‌ها پیدا کرد به‌طوری که هر عدد یک واحد افزایش یابد؟

3- برای ساختن عدد 33 به چند کارت نیاز هست؟ کارت‌ها را به‌ترتیب قرار داده و معادل 0 و 1 آن را بنویسید.

در سیستم دودویی به هرکدام از صفرها یا یک‌ها، یک بیت (bit) می‌گویند.

دروازهٔ منطقی

دروازه‌های منطقی (Logic Gates) اساس کار رایانه‌ها است. به عبارت دیگر، یک رایانه از تعدادی دروازه‌های منطقی تشکیل شده است. یک دروازه منطقی:
- یک مدار الکترونیکی است که یک یا چند ورودی و فقط یک خروجی دارد و این ورودی و خروجی‌ها فقط 0 و 1 هستند.
- از قطعات الکترونیکی مانند دیود، مقاومت و ترانزیستور تشکیل شده است و از مبنای سیستم دودویی پیروی می‌کند.
- به صورت مدارات مجتمع یا IC ایجاد می‌شود و در بازار وجود دارد.

حتماً تاکنون با خودرو سفر کرده‌اید. در بعضی از خودروها وقتی یکی از 4 درب خودرو باز باشد یک چراغ به عنوان هشداردهنده وجود دارد. اگر 4 درب را به عنوان ورودی و با مقادیر 0 به ازای بسته بودن و 1 به ازای باز بودن درب و چراغ نشانگر را به عنوان خروجی در نظر بگیریم معادل مدل خاصی از یک دروازه منطقی است.

عدد ${(1101)_2}$ به صورت «یک‌یک صفر یک» در مبنای دو خوانده می شود. عدد ${(1101)_{10}}$ به صورت هزار و صد و یک خوانده می‌شود.

در سیستم عددنویسی، هر رقم دارای دو ارزش است:
الف) ارزش مطلق
ب) ارزش مکانی

برای تعیین ارزش مکانی ابتدا باید رقم‌های عدد را از سمت راست به چپ شماره‌گذاری کرد (تعیین مرتبه) و این شماره از عدد صفر شروع می‌شود. اگر عدد مبنا را به توان مرتبه برسانید، ارزش مکانی رقم مشخص می‌شود.

برای مثال مرتبه ارقام عدد 8624 به صورت روبه‌رو مشخص می‌شود.

مرتبه 0 1 2 3
عدد ده‌دهی 4 2 6 8

در این جدول رقم 6 دارای ارزش مطلق 6 و مرتبه 2 است و ارزش مکانی آن ${10^2}$ است.

فعالیت کلاسی (صفحهٔ 65 کتاب درسی)

 

ارزش مطلق و ارزش مکانی ارقام 4، 2 و 8 را در عدد 8624 تعیین کنید.

کنجکاوی (صفحهٔ 65 کتاب درسی)

 

با ارزش‌ترین رقم در عدد 27468، رقم ..... است.

جدول ارزش مکانی عدد 8624

با توجه به جدول ارزش مکانی، تجزیه عدد 8624 در سیستم عددنویسی ده‌دهی به‌صورت زیر خواهد شد.

یکان $({10^0})$ دهگان $({10^1})$ صدگان $({10^2})$ هزارگان $({10^3})$
4 2 6 8

سیستم عددنویسی دودویی (Binary System)

سیستم عددنویسی مبنای دو از رقم‌های صفر و یک $\left\{ {0,1} \right\}$ تشکیل شده است که مبنای کار رایانه‌هاست و الفبای زبان رایانه نامیده می‌شود. هر عدد در سیستم عددنویسی دودویی فقط می‌تواند شامل ارقام 0 یا 1 باشد.

در سیستم عددنویسی مبنای دو، ارزش مطلق هر رقم می‌تواند 0 یا 1 باشد و برای تعیین ارزش مکانی یک رقم ابتدا باید مرتبه عدد را تعیین کرد، سپس عدد 2 را به توان مرتبه رساند و ارزش هر رقم از حاصل‌ضرب ارزش مطلق عدد در ارزش مکانی عدد حاصل می‌شود.
با جمع ارزش ارقام یک عدد در سیستم عددنویسی مبنای دو، معادل ده‌دهی آن عدد به دست می‌آید.

مثال: معادل ده‌دهی عدد ${(1101)_2}$ را به دست آورید.

یکان $({2^0})$ دوگان $({2^1})$ چهارگان $({2^2})$ هشت‌گان $({2^3})$
1 0 1 1

برای سهولت کار، بالای هر رقم ارزش مکانی آن را بنویسید و ارزش مکانی رقم‌هایی که یک هستند را با هم جمع کنید.

${(\mathop 1\limits^8 \mathop 1\limits^4 \mathop 0\limits^2 \mathop 1\limits^1 )_2} = 8 + 4 + 1 = 13$

با تغییر مبنای عدد، ماهیت آن عوض نمی‌شود؛ بلکه فقط شکل نمایش آن تغییر می‌کند، بنابراین می‌توان نوشت:

${(1101)_2} = {(13)_{10}}$

یادداشت (صفحهٔ 66 کتاب درسی)

 

ارزش هر رقم در سیستم عددنویسی دودویی، 2 برابر ارزش رقم سمت راست خودش است. در سیستم ده‌دهی چطور؟

فعالیت کلاسی (صفحهٔ 66 کتاب درسی)

 

معادل عدد ${(101101)_2}$ در مبنای 10 را محاسبه کنید. می‌توانید برای ارزش مکانی سیستم عددنویسی مبنای 2، 10 و 16 از کتاب همراه هنرجو کمک بگیرید.

تبدیل عدد مبنای 10 به 2 به روش کاهش وزن‌ها

مثال: عدد 53 از مبنای 10 را به مبنای دو تبدیل کنید.

1- توان‌های 2 را بنویسید تا جایی که یک مرتبه از عدد 53 بزرگ‌تر باشد.

1 2 4 8 16 32 64
             

2- بزرگ‌ترین توانی که کوچک‌تر از عدد 53 است را پیدا کنید.

3- در واقع یک بستۀ 32 تایی بردارید و باقی‌مانده را به دست آورید 21=32-53.

1 2 4 8 16 32 64
          1  

4- یک بستۀ 16تایی هم بردارید و باقی مانده را به دست آورید 5=16-21

1 2 4 8 16 32 64
        1 1  

در این مرحله بستۀ 8تایی نداریم، بنابراین در مرتبۀ 8 مقدار 0 قرار می‌گیرد.
5- یک بستۀ 4تایی هم بردارید و باقی‌مانده را مجدد حساب کنید 1=4-5

1 2 4 8 16 32 64
    1 0 1 1  

6- برای مرتبه 2 هم مقدار 0 قرار دهید.

1 2 4 8 16 32 64
  0 1 0 1 1  

7- باقی‌مانده عدد 1 است که در محل خودش قرار می‌گیرد.

1 2 4 8 16 32 64
1 0 1 0 1 1  

8- عدد حاصل 110101 خواهد بود.

فعالیت کلاسی (صفحهٔ 68 کتاب درسی)

 

عدد 94 از مبنای 10 را به مبنای دو تبدیل کرده، و جدول را تکمیل کنید.

1- توان‌های 2 را بنویسید تا جایی که ...........................................................

1 2 ..... ..... ..... ..... ..... .....
               

2- ...........................................................

1 2 ..... ..... ..... ..... ..... .....
            1  

3- ...........................................................

1 2 ..... ..... ..... ..... ..... .....
          0 1  

4- ...........................................................

1 ..... ..... ..... ..... ..... ..... .....
               

5- ...........................................................

1 ..... ..... ..... ..... ..... ..... .....
               

6- ...........................................................

1 ..... ..... ..... ..... ..... ..... .....
               

7- عدد حاصل 1011110 خواهد بود.

سیستم عددنویسی هگزادسیمال (Hexadecimal)

سیستم عددی مبنای 16 یکی دیگر از سیستم‌های عددی کاربردی در رایانه است. نمایش آدرس‌دهی حافظه و آدرس فیزیکی کارت‌های شبکه و کد رنگ‌ها نمونه‌هایی از کاربرد این سیستم در رایانه هستند.
سیستم شمارش هگزادسیمال دارای 16 رقم شامل اعداد 0 تا 9 و حروف A تا F است که معرف اعداد 10 تا 15 هستند.

بنابراین مجموعه ارقام مبنای 16 به صورت زیر است:

$\begin{array}{l}
10,11,12,13,14,15\\
\left\{ {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} \right\}
\end{array}$

سیستم شمارش مبنای 16 نمایشی ساده‌تر برای اعداد در مبنای 2 است. برای نمونه عدد دودویی 11011111011 در مبنای 16 به‌صورت 6FB نمایش داده می‌شود.

${(11011111011)_2} = {(6FB)_{16}}$

کنجکاوی (صفحهٔ 69 کتاب درسی)

 

1- عدد ${(7A3)_{16}}$ را با صدای بلند در کلاس بخوانید.

2- در تمرین بالا، می‌توانیم «در مبنای 16» را نگوییم. چرا؟

در سیستم عددنویسی مبنای شانزده ارزش مطلق هر رقم می‌تواند از 0 تا 15 باشد و برای تعیین ارزش مکانی یک رقم ابتدا باید مرتبه عدد را تعیین کرد، سپس عدد 16 را به توان مرتبه رساند و ارزش هر رقم از حاصل‌ضرب ارزش مطلق عدد در ارزش مکانی عدد حاصل می‌شود. 

با تعیین ارزش یک عدد در سیستم عددنویسی مبنای 16، معادل ده‌دهی آن عدد به دست می‌آید.

جدول 1- ارزش مکانی ارقام در سیستم عددنویسی مبنای شانزده

رقم ارزش مکانی
اولین رقم سمت راست $1 = {16^0}$
دومین رقم سمت راست $16 = {16^1}$
سومین رقم سمت راست $256 = {16^2}$
چهارمین رقم سمت راست $4096 = {16^3}$
پنجمین رقم سمت راست $65536 = {16^4}$
........ ........

مثال 1: ارزش عدد ${(304)_{16}}$ به‌صورت زیر محاسبه می‌شود:

یکان $({16^0})$ شانزده‌گان $({16^1})$ 256گان $({16^2})$
4 0 3

مثال 2: معادل ده‌دهی عدد ${(3D)_{16}}$ به صورت زیر محاسبه می‌شود:

${(3D)_{16}} = 3 \times {16^1} + 13 \times 1 = 48 + 13 = 61$

کنجکاوی (صفحهٔ 70 کتاب درسی)

 

1- بزرگ‌ترین عدد 3 رقمی در مبنای 10 چه عددی است؟

2- بزرگ‌ترین عدد 3 رقمی در مبنای 16 چه عددی است؟

3- بزرگ‌ترین عدد 3 رقمی در مبنای 2 چه عددی است؟

تبدیل اعداد مبنای 2 به 16

در سیستم شمارش هگزادسیمال برای هر رقم 4 بیت در نظر گرفته می‌شود $(16 = {2^4})$. بنابراین برای تبدیل آن به مبنای 2 ابتدا از سمت راست 4 رقم را جدا کرده و معادل هگزادسیمال آن چهار رقم را می‌نویسیم و همین روال را برای 4 رقم بعدی نیز انجام می‌دهیم چنانچه تعداد ارقام باقی مانده کمتر از 4 بود، به ازای ارقامی که کم داریم پشت عدد، صفر قرار می‌دهیم.

مثال 1: عدد ${(11010101101110101101)_2}$ را به معادل مبنای 16 آن تبدیل کنید.

$\underbrace {1101}_?\underbrace {0101}_?\underbrace {1011}_?\underbrace {1010}_?\underbrace {1101}_?$

$\begin{array}{l}
1101 = 8 + 4 + 1 = 13 \to D\\
1010 = 8 + 2 = 10 \to A\\
1011 = 8 + 2 + 1 = 11 \to B\\
0101 = 4 + 1 = 5 \to 5\\
1101 = 8 + 4 + 1 = 13 \to D
\end{array}$
$\underbrace {1101}_D\underbrace {0101}_5\underbrace {1011}_B\underbrace {1010}_A\underbrace {1101}_D$

نتیجه به صورت زیر خواهد بود:
D5BAD

مثال 2:
عدد ${(10000111110001001)_2}$ را به مبنای 16 تبدیل کنید.

$\underbrace 1_?\underbrace {0000}_?\underbrace {1111}_?\underbrace {1000}_?\underbrace {1001}_?$
$\begin{array}{l}
1001 = 8 + 1 = 9 \to 9\\
1000 = 8 \to 8\\
1111 = 8 + 4 + 2 + 1 = 15 \to F\\
0000 = 0 \to 0\\
0001 = 1 \to 1
\end{array}$

فعالیت کلاسی (صفحهٔ 71 کتاب درسی)

 

جدول زیر را کامل کنید.

مبنای 16 مبنای 2 مبنای 1
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
A   10
B   11
C   12
D   13
E   14
F   15

کنجکاوی (صفحهٔ 71 کتاب درسی)

 

نمایش یک عدد دودویی 32 بیتی (رقمی) در مبنای 16 چند رقمی است؟

نتیجه به‌صورت .......................خواهد بود.

تبدیل اعداد مبنای 16 به 2

برای تبدیل مبنای 16 به 2، هر رقم مبنای 16 را به مبنای 2 برده، در 4 بیت نمایش می‌دهیم.
مثال: معادل عدد ${(AC1)_{16}}$ را در مبنای 2 به دست آورید.

$\begin{array}{l}
\mathop {????}\limits^A \mathop {????}\limits^C \mathop {????}\limits^1 \\
A = 10 = {(1010)_2}\\
C = 12 = {(1100)_2}\\
1 = 1 = {(0001)_2}\\
\mathop {1010}\limits^A \mathop {1100}\limits^C \mathop {0001}\limits^1 
\end{array}$

فعالیت کلاسی (صفحهٔ 72 کتاب درسی)

 

معادل عدد DEF را در مبنای 2 بنویسید.

کاربرد سیستم اعداد در رایانه

کاربرد اعداد دودویی

در بیشتر زبان‌های برنامه‌نویسی، داده‌های عددی صحیح و اعشاری با تعداد تعریف شده‌ای بیت، بیان می‌شوند.
به جدول زیر دقت کنید.

نوع داده بیت‌ها محدوده داده
عدد صحیح بدون علامت 8 بیت 0 تا 255
عدد صحیح با علامت 8 بیت 127 تا 128-
عدد صحیح معمولی 16 بیت 32767 تا 32768-

مثال: بزرگ‌ترین و کوچک‌ترین عدد صحیح بدون علامت با 8 بیت طول به صورت زیر هستند:

کاربرد اعداد هگزادسیمال

سیستم هگزادسیمال در رایانه و ریاضی کاربردهای فراوانی دارد. برای نمایش آدرس‌های حافظه، برنامه‌نویسی سطح پایین، توصیف رنگ در صفحات وب و آدرس فیزیکی کارت شبکه از سیستم عددنویسی هگزادسیمال استفاده می‌شود.

آدرس فیزیکی کارت شبکه (MAC Address)

هر کارت شبکه دارای یک آدرس منحصربه فرد 12 رقمی هگزادسیمال است که توسط کارخانه سازنده برای آن در نظر گرفته می‌شود.

برای نمونه آدرس فیزیکی WiFi یک گوشی هوشمند تلفن همراه به صورت زیر است:

$F0:0F:0C:3F:EA:CF$

این آدرس یک عدد هگزادسیمال با 12 رقم است، که اگر قرار بود این عدد به صورت عدد دودویی نمایش داده شود باید از 48 صفر و یک استفاده می‌شد.

$\begin{gathered}
  F0:0F:0C:3F:EA:CF \hfill \\
  11110000:00001111:00001100:00111111:11101010:11001111 \hfill \\ 
\end{gathered} $

پژوهش (صفحهٔ 73 کتاب درسی)

 

چطور می‌توان آدرس فیزیکی کارت شبکه رایانه را نمایش داد؟

سیستم رنگ RGB

این سیستم برای رسانه‌های تصویری مانند صفحه نمایش و تلویزیون و هر آنچه از آن نور ساطع شود، به کار می‌رود. پایه و اساس RGB نور است و به جای سه رنگ قرمز، سبز و آبی، در واقع سه نور رنگی داریم؛ در صفحه نمایش، تغییر ولتاژ ارسالی به پیکسل‌ها باعث ایجاد نور رنگی می‌شود و ترکیب این نورها سبب ایجاد رنگ پیکسل می‌شود. نام این سیستم رنگ، از حروف اول سه رنگ تشکیل دهنده آن (RedGreenBlue) گرفته شده است که آن را سیستم RGB می‌نامند. ترکیب این سه رنگ اصلی، رنگ‌های جانبی را تشکیل می‌دهد (شکل 1)

شکل 1- سیستم رنگ RGB

سیستم رنگ برای نمایش، از کدهای هگزادسیمال استفاده می‌کند. کد هر رنگ با توجه به شدت سه رنگ قرمز، سبز و آبی تعیین می‌شود و شدت هر رنگ با یک عدد دو رقمی در مبنای 16 مشخص می‌شود. کد رنگ سبز 00FF00 است که شدت رنگ قرمز و آبی آن صفر و سبز آن FF است رنگ قرمز با کد FF0000 نمایش داده می‌شود

#00FF00
RGB

کنجکاوی (صفحهٔ 74 کتاب درسی)

 

1- با توجه به شکل 1 بگویید برای تولید رنگ سفید چه رنگ‌هایی مورد استفاده قرار می‌گیرد؟ برای رنگ سرخابی چطور؟ 

2- رنگ سبز و آبی هریک با چه کدی نمایش داده می‌شوند؟ رنگ زرد چطور؟
برای دیدن برخی رنگ‌های اصلی می‌توانید از کتاب همراه هنرجو کمک بگیرید.

از کد رنگ هگزادسیمال در کدهای HTML برای طراحی صفحات وب استفاده می‌شود برای نمونه اگر بخواهند رنگ پس زمینه صفحه وب را به رنگ سبز نمایش دهند از کد زیر استفاده می‌شود.

bgcolor=”#00FF00”

کنجکاوی (صفحهٔ 74 کتاب درسی)

 

در کارگاه نصب و راه‌اندازی سیستم‌های رایانه‌ای و با استفاده از کتاب همراه هنرجو، بررسی کنید که در نرم‌افزار نقاشی ویندوز عدد رنگ‌ها در چه مبنایی نمایش داده می‌شوند؟ و برای تشکیل رنگ زرد اعداد مربوطه به چه صورت خواهد بود؟

آدرس IP نسخه 6 (IPV6)

فرض کنید شما می‌خواهید به دوست خود یک نامه ارسال کنید. برای این کار شما و دوستتان باید کد پستی داشته باشید. رایانه‌های عضو یک شبکه هم برای اینکه بتوانند با هم تبادل اطلاعات داشته باشند باید یک آدرس منحصربه فرد داشته باشند، که به آن آدرس IP می‌گویند. بنابراین هر دستگاه عضو شبکه دارای یک آدرس IP برای اتصال به شبکه است. نسخه قدیمی آدرس IP، نسخه (IPV4) 4 بود که از 4 عدد ده‌دهی از 0 تا 255 و در واقع از 4 بایت مشابه نمونه زیر تشکیل می‌شود:

192.168.100.12

معادل دودویی آدرس IP بالا به صورت زیر خواهد بود:

11000000.10101000.01100100.00001100

در بزرگ‌ترین شبکه جهانی یا همان اینترنت هر فردی که با رایانه یا گوشی هوشمند یا تبلت به اینترنت متصل می‌شود باید یک آدرس IP منحصربه فرد داشته باشد تا بتواند از اطلاعات موجود استفاده کند یا تبادل اطلاعات انجام دهد. با توجه به افزایش کاربران اینترنت و محدودیت تعداد آدرس IP نسخه 4، آدرس IP نسخه 6 به وجود آمد. بنابراین نسخه جدید آدرس IP، نسخه 6 است که از 8 بخش 16 بیتی شامل 0000 تا FFFF تشکیل شده است. برای نمونه آدرس IP نسخه 6 به‌صورت زیر نمایش داده می‌شود:

2701:E0B1:8003:F162:0000:1100:0000:D82E

اگر بخواهیم آدرس صفحۀ قبل را به صورت دودویی بنویسیم باید از 128 بیت (صفر و یک) استفاده کنیم.

10011100000001:1110000010110001:1000000000000011:1111000101100010:00000
00000000000:0001000100000000:0000000000000000:1101100000101110

کنجکاوی (صفحهٔ ... کتاب درسی)

 

در کارگاه نصب و راه‌اندازی سیستم‌های رایانه‌ای، به کمک هنرآموز خود آدرس IP سیستم خود را نمایش داده و معادل دودویی آن را بنویسید.

سیستم کدگذاری (Coding System) در رایانه

سیستم اعدادی که سخت‌افزار رایانه عملاً با آن کار می‌کند سیستم دودویی است و برای تشخیص حروف، اعداد و علائم مختلف به سیستم کدگذاری نیاز داریم. روش‌های مختلفی برای کدگذاری در رایانه استفاده می‌شود. در این کتاب سه روش اسکی (ASCII) یونیکد (UNICODE) و UTF مورد بررسی قرار می‌گیرد.

کد اسکی

رایانه‌ها با عدد سروکار دارند نه با حروف. اگر داده‌ها بر اساس روش استاندارد و مشترکی کدگذاری نشوند، در زمان نمایش داده‌های دریافتی به مشکل برخورد می‌کنیم.
فرض کنید:

در رایانه 1: عدد 1 برای حرف A، عدد 2 برای حرف B و عدد 3 برای حرف C ....... و عدد 26 برای حرف Z در نظر گرفته شده باشد.
در رایانه 2: عدد 0 برای حرف A، عدد 1 برای حرف B و عدد 2 برای حرف C ....... و عدد 25 برای حرف Z در نظر گرفته شده باشد.

اگر رایانه 1 بخواهد واژه IRAN را ارسال کند در واقع اعداد 9، 18، 1 و 14 ارسال می‌شوند ولی در رایانه 2 عدد 9 معادل J و عدد 18 معادل S و عدد 1 معادل B و عدد 14 معادل حرف O است و رایانه 2 به‌جای واژه IRAN عبارت JSBM را نمایش می‌دهد. برای حل این مشکل به یک روش استاندارد برای کدگذاری ‌نویسه‌ها (Characters) نیاز داریم. 

کنجکاوی (صفحهٔ 75 کتاب درسی)

 

با توجه به فرض بالا اگر رایانه 1 واژگان CODE و HELLO را برای رایانه 2 ارسال کند در رایانه 2 چه واژگانی نمایش داده می‌شوند؟

کدگذاری اسکی (ASCII) در ابتدا یک روش کدگذاری 7 بیتی دارای 128 حالت شامل 0000000 تا 1111111 بود که فقط 95 نویسه قابل چاپ داشت.
در این کدگذاری برای حرف A از کد 65 استفاده می‌شود که کد دودویی آن 1000001 است. اگر بخواهید واژه IRAN را ارسال کنید به ترتیب اعداد 73، 82، 65، 78 ارسال می‌شوند که معادل دودویی آن‌ها به صورت زیر خواهد بود:

1001001 1010010 1000001 1001110

بنابراین باوجود روش کدگذاری اسکی، رایانه مقصد هم به سهولت این اعداد را به واژه IRAN تبدیل کرده و نمایش می‌دهد.

نوع توسعه یافته کد اسکی برای کدگذاری از 8 بیت استفاده می‌کند و به این ترتیب 256 نویسه کدگذاری می‌شود که تا 128 کد آن همان اسکی استاندارد بوده و مابقی تا 256 دارای هیچ استانداردی نبوده و در رایانه‌های مختلف ممکن است متفاوت باشد. برای مثال در رایانه 1 کد 150 معادل $\hat u$ و در رایانه 2 کد 150 معادل حرف ب است. کدگذاری از 128 به بعد در روش کدگذاری اسکی برای زبان‌های مختلف کاربرد دارد.

کنجکاوی (صفحهٔ 76 کتاب درسی)

 

1- در کارگاه نصب و راه اندازی سیستم‌های رایانه‌ای، در نرم افزار ساده ویرایش متن Notepad کلید Alt را نگه داشته و در قسمت کلیدهای عددی عدد 150 را تایپ کنید. چه نویسه‌ای نمایش داده می‌شود؟

2- اعداد 200 تا 206 را با نگه داشتن Alt وارد کنید چه نویسه‌هایی نمایش داده می‌شود؟

یونیکد (Unicode)

اینترنت و جهانی شدن ارتباطات، سبب افزایش تبادل اطلاعات در کشورهای مختلف شد. از آنجا که الفبای زبان‌هایی مانند زبان‌های چینی و ژاپنی و ... بیش از 128 حرف دارند، کدگذاری اسکی برای کدگذاری این زبان‌‌ها مناسب نیست. بنابراین استاندارد جدیدی به نام یونیکد به وجود آمد. یونیکد به هر نویسه مستقل از محیط، برنامه و زبان یک کد منحصربه فرد به نام Code point اختصاص می‌دهد. این استاندارد یک کد به نویسه‌های مشترک در چند زبان مختلف اختصاص می‌دهد. نسخه جدید یونیکد دارای 13669 Code point است. 128 Code point ابتدایی یونیکد، همانند کدهای اَسکی هستند و در یونیکد نویسه‌ها به صورت 32 بیتی تعریف می‌شوند. ولی بسیاری از نرم افزارها به ویژه برنامه‌های ارسال و دریافت اطلاعات در اینترنت با نویسه‌های 8 بیتی کار می‌کنند و عملاً نمی‌توان 136690 Code point را در 8 بیت جا داد و برای ارسال و دریافت 32 بیت به پهنای باندی 4 برابر بیشتر نیاز است. در این موارد از UTF-8 استفاده شد که مخفف قالب 8 بیتی انتقال مجموعة نویسه‌ای جهانی است. 

UTF-8 یک رمزگذاری با طول متغیر 4 بایتی است. یک بایت برای حروف و علائم استاندارد انگلیسی که همان کدهای اسکی هستند، دو بایت برای بقیه حروف لاتین و نویسه‌های خاورمیانه و سه بایت برای شرق آسیا استفاده می‌شود. بقیه نویسه‌ها با چهار بایت نمایش داده می‌شوند.

با توجه به اینکه UTF-8 از کدهای 127 برای نویسه‌های اسکی استفاده می‌کند، در تمامی نرم افزارهایی که از نویسه‌های 7 بیتی پشتیبانی می‌کنند قابل پردازش است.

UTF-8 رایج‌ترین روش رمزگذاری نویسه در میان تارنماها است. UTF دارای نسخه‌های مختلفی مانند UTF-7 و UTF-8 و UTF-16 و UTF-32 است و UTF-8 محبوب‌ترین نوع کدگذاری یونیکد است.

پودمان 3: حل مسئله (تبدیل مبناها)